# -*- coding: utf-8 -*-

from functools import reduce   

def str2float(s):
    l = s.split('.')
    def ch2num(c):
        return {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}[c]
    def fn(x,y):
        return x*10 + y
    ret1 = 0
    ret2 = 0 
    if(len(l) > 0):
        ret1 = reduce(fn,map(ch2num,l[0]))
        # print('1:',ret1)
    if(len(l) > 1 and l[1] != ''):
        ret2 = reduce(fn,map(ch2num,l[1]))
        # print('2:',ret2)
        ret2 /= 10 ** len(l[1])
        # print('3:',ret2)
    return ret1 + ret2


def main():
    s = '123.01'
    print(str2float(s))

if __name__ == '__main__':
    main()